Detecting a state of a magnet is a basic computation step for magnetic memory and magnetic logic devices. The state of the magnet determines whether it is storing a logic zero or logic one. An example of a magnetic memory is Spin Transfer Torque (STT) Magnetic Random Access Memory (MRAM). In STT MRAM, the state of the magnetic memory is determined by sensing a resistance of a magnetic device of the memory, and then comparing that resistance against a reference resistance. Conversion of the magnetic state to a charge variable is also important for magnetic spin logic and interconnects. For example, a charge variable such as current can flow through long interconnects to other magnetic spin logic. Existing magnet detection is based on magnetic tunnel junctions (MTJs) and/or spin current interconnects which suffer from several limitations, however.
For example, conversion from spin current to charge variable mediated by Tunneling Magneto Resistance (TMR) has limited conversion efficiency, TMR based readout from a memory limits the device resistance to a range of 4 k to 8 K Ohms, and spin current based interconnects are limited in interconnect length due to spin degradation along the length of the interconnect. These limitations and constraints result in inefficient switching, limited read speeds of the STT MRAM, and limited interconnect options for spin logic.